# Créé par char, le 11/12/2025 en Python 3.7 #class graph: #def __init__(self,listes_sommets): #self.liste_sommets = liste_sommets #self.voisins = {} #for def parcours_en_largeur(graphe,depart): visites = [] file = [depart] vus = {depart} while file: noeud = file.pop(0) visites.append(noeud) for voisins in graphe.get(noeud,[]): if voisins not in vus: vus.add(voisins) file.append(voisins) return visites assert parcours_en_largeur({"A": ["B", "D", "E"],"B": ["A", "C"], "C": ["B", "D"], "D": ["A", "C", "E"], "E": ["A", "D", "F", "G"], "F": ["E", "G"], "G": ["E", "F", "H"], "H": ["G"]},"A") == ['A', 'B', 'D', 'E', 'C', 'F', 'G', 'H'] print(parcours_en_largeur({"A": ["B", "D", "E"],"B": ["A", "C"], "C": ["B", "D"], "D": ["A", "C", "E"], "E": ["A", "D", "F", "G"], "F": ["E", "G"], "G": ["E", "F", "H"], "H": ["G"]},"A"))